/******************************************************************************************
 * Import
 ******************************************************************************************/

// module
import _ from 'lodash';
import React, {Component} from 'react';
import {View, Text} from 'react-native';

// project
import Base from '../_/base';

/******************************************************************************************
 * Export Class
 ******************************************************************************************/

export default class ELabel extends Base {

	/**
     * 固定样式
     */
    getFixedStyles() {
        return {
            flexDirection: 'row',
            alignItems: 'center'
        };
    }

    /**
     * 渲染
     */
	render() {

        // 计算textStyles（天生文本居中, flex为1）
        let textStyles = { textAlign: 'center', flex: 1};
        if (this.styles.width) textStyles['width'] = this.styles.width;
        if (this.styles.color) textStyles['color'] = this.styles.color;
        if (this.styles.fontSize) textStyles['fontSize'] = this.styles.fontSize;
        if (this.styles.fontWeight) textStyles['fontWeight'] = this.styles.fontWeight;

        // 删除this.styles中的test样式
        this.styles = _.omit(this.styles, ['color', 'fontSize', 'fontWeight']);

        // 渲染
		return (
            <View {...this.sysProps} style={this.styles}>
                <Text style={textStyles}>
                    {this.props.children}
                </Text>
            </View>
		);
	}
}
